<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
    <th:block th:include="include :: header('工厂设置')"/>
    <link th:href="@{/assets/libs/layui/css/layui.css}" media="all" rel="stylesheet">
    <style>
        [v-cloak] {
            display: none;
        }
    </style>
</head>
<body class="gray-bg">
<div class="container-div">
    <div class="row">
        <div class="col-sm-12 search-collapse">
            <form id="formId">
                <div class="select-list">
                    <ul>
                        <li v-if="checkedSearch.indexOf('工厂名称') != -1">
                            工厂名称：
                            <select name="factoryId">
                                <option value="">全部</option>
                                <option v-for="(item, index) in rows" :key="index" :value="item.factoryId" v-cloak>{{item.factoryName}}</option>
                            </select>
                        </li>
                        <li v-if="checkedSearch.indexOf('地址') != -1">
                            地址：<input type="text" name="addr"/>
                        </li>
                        <li v-if="checkedSearch.indexOf('邮箱') != -1">
                            邮箱：<input type="text" name="email"/>
                        </li>
                        <li class="select-time" v-show="checkedSearch.indexOf('创建时间') != -1">
                            <label>创建时间：</label>
                            <input type="text" class="time-input" id="startTime" placeholder="开始时间" name="startTime"/>
                            <span>-</span>
                            <input type="text" class="time-input" id="endTime" placeholder="结束时间" name="endTime"/>
                        </li>
                        <li>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
                            <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
                            <a class="btn btn-success btn-rounded btn-sm" @click="moreSearch()"><i class="fa fa-edit"></i>&nbsp;更多</a>
                        </li>
                    </ul>
                </div>
            </form>
        </div>
        <el-dialog title="搜索条件" width="200px" :visible.sync="showMore">
            <el-row>
                <el-col :span="24">
                    <el-checkbox style="margin-left: 28px" :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
                    <el-checkbox-group v-model="checkedSearch" @change="handleCheckedSearchChange">
                        <el-checkbox style="display: block;margin-left: 28px" v-for="item in searches" :label="item" :key="item" v-cloak>{{item}}</el-checkbox>
                    </el-checkbox-group>
                </el-col>
            </el-row>
        </el-dialog>
        <div class="btn-group-sm" id="toolbar" role="group">
            <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:factory:add">
                <i class="fa fa-plus"></i> 添加
            </a>
            <a class="btn btn-primary btn-edit disabled" onclick="$.operate.edit()" shiro:hasPermission="system:factory:edit">
                <i class="fa fa-edit"></i> 修改
            </a>
            <a class="btn btn-danger btn-del btn-del disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:factory:remove">
                <i class="fa fa-remove"></i> 删除
            </a>
        </div>
        <div class="col-sm-12 select-table table-striped">
            <table id="bootstrap-table" data-mobile-responsive="true"></table>
        </div>
    </div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
    var editFlag = [[${@permission.hasPermi('system:factory:edit')}]];
    var removeFlag = [[${@permission.hasPermi('system:factory:remove')}]];
    var prefix = ctx + "system/factory";

    $(function () {
        var options = {
            url: prefix + "/list",
            queryUrl: prefix + "/findList",
            createUrl: prefix + "/add",
            updateUrl: prefix + "/edit/{id}",
            removeUrl: prefix + "/remove",
            modalName: "工厂",
            columns: [
                {
                    checkbox: true
                },
                {
                    field: 'factoryId',
                    title: '工厂编号',
                    align: 'center',
                    visible: false
                },
                {
                    field: 'factoryName',
                    title: '工厂名称',
                    align: 'center',
                    visible: true
                },
                {
                    field: 'wareId',
                    title: '仓库ID',
                    align: 'center',
                    visible: false
                },
                {
                    field: 'wareName',
                    title: '仓库名称',
                    align: 'center',
                    visible: true
                },
                {
                    field: 'addr',
                    title: '地址',
                    align: 'center',
                    visible: true
                },
                {
                    field: 'email',
                    title: '邮箱',
                    align: 'center',
                    visible: true
                },
                {
                    field : 'createTime',
                    title : '创建时间',
                    align: 'center',
                    visible: true,
                },
                {
                    title: '操作',
                    align: 'center',
                    formatter: function (value, row, index){
                        var actions = [];
                        actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.factoryId + '\')"><i class="fa fa-edit"></i>编辑</a> ');
                        actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.factoryId + '\')"><i class="fa fa-remove"></i>删除</a>');
                        return actions.join('');
                    }
                }
            ]
        };
        $.table.init(options);
    });

    const searchOptions = ['工厂名称', '地址', '邮箱', '创建时间'];

    var app = new Vue({
        el: '.container-div',
        data: {
            rows: [],
            showMore: false,
            checkAll: false,
            checkedSearch: ['工厂名称', '地址', '邮箱'],
            searches: searchOptions,
            isIndeterminate: true
        },
        methods: {
            moreSearch(){
                this.showMore = true;
            },
            handleCheckAllChange(val){
                this.checkedSearch = val ? searchOptions : [];
                this.isIndeterminate = false;
            },
            handleCheckedSearchChange(value){
                let checkedCount = value.length;
                this.checkAll = checkedCount === this.searches.length;
                this.isIndeterminate = checkedCount > 0 && checkedCount < this.searches.length;
            },
            getRows:function(){
                var that = this;
                $.ajax({
                    cache: true,
                    type: "POST",
                    url: "/system/factory/list",
                    data: {},
                    async: false,
                    error: function(request){
                        $.modal.alertError("系统错误");
                    },
                    success: function(data){
                        that.rows = data.rows;
                    }
                });
            }
        },
        created(){
            this.getRows();
        }
    })
</script>
</body>
</html>
